package com.gateway;

import org.springframework.boot.SpringApplication;
import org.springframework.cloud.client.SpringCloudApplication;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver;


/**
 * Zuul application
 *
 * @description:
 * 1、Pre：过滤器在请求被路由之前调用。我们可利用这种过滤器实现身份验证、在集群中选择请求的微服务、记录调试信息等；
 *
 * 2、Routing：过滤器将请求路由到微服务。这种过滤器用于构建发送给微服务的请求，并使用Apache HttpClient或Netfilx Ribbon请求微服；
 *
 * 3、Post：过滤器在路由到微服务以后执行。这种过滤器可用来为响应添加标准的HTTP Header、收集统计信息和指标、将响应从微服务发送给客户端；
 *
 * 4、Error：在其他阶段发生错误时执行该过滤器。除了默认的过滤器类型微服务；
 * @author: cyj
 * @date 2021 -12-16 10:23:28
 *
 *
 */
@SpringCloudApplication
@EnableZuulProxy
@EnableFeignClients
@ComponentScan
public class ZuulApplication {
    /**
     * Main
     *
     * @param args args
     * @description:
     */
    public static void main(String[] args) {
        ConfigurableApplicationContext applicationContext = SpringApplication.run(ZuulApplication.class, args);
    }
}
